﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using LCTNote.Models.ViewModels;
using LCTNote.Models.DataModels;

namespace LCTNote.Services
{
    class ThuMucService : Service
    {
        /// <summary>
        /// Lấy thư mục theo mã người dùng
        /// </summary>
        /// <param name="maNguoiDung">Mã người dung</param>
        /// <returns></returns>
        public static List<ThuMucViewModel> layThuMucTheoMaNguoiDung(int maNguoiDung)
        {
            return executeDataReader_List<ThuMucViewModel>
                (
                    "Note_layThuMucTheoMaNguoiDung",
                    new object[]
                    {
                        maNguoiDung
                    }
                );
        }

        /// <summary>
        /// Lấy thư mục theo mã thư mục cha
        /// </summary>
        /// <param name="maThuMucCha">Mã thư mục cha</param>
        /// <returns></returns>
        public static List<ThuMucViewModel> layThuMucTheoMaThuMucCha(int maThuMucCha)
        {
            return executeDataReader_List<ThuMucViewModel>
                (
                    "Note_layThuMucTheoMaThuMucCha",
                    new object[]
                    {
                        maThuMucCha
                    }
                );
        }

        /// <summary>
        /// Thêm thư mục
        /// </summary>
        /// <param name="thuMuc">Thư mục cần thêm</param>
        /// <returns>Mã thư mục - 0 nếu false</returns>
        public static int themThuMuc(ThuMucDataModel thuMuc)
        {
            return executeScalar<int>
                (
                    "Note_themThuMuc",
                    new object[]
                    {
                        thuMuc.tenThuMuc,
                        thuMuc.moTaThuMuc,
                        thuMuc.maThuMucCha,
                        thuMuc.maNguoiTao
                    }
                );
        }

        public static ThuMucViewModel layThuMucTheoMaThuMuc(int maThuMuc)
        {
            return executeDataReader<ThuMucViewModel>
                (
                    "Note_layThuMucTheoMaThuMuc",
                    new object[]
                    {
                        maThuMuc
                    }
                );
        }
    }
}
